In networked computer applications and systems, from the world wide web to networked systems installed in business enterprises such as banks and airlines, there is a frequent need to install new "code" or programming for new or existing programs and applications. New programs are continually being provided and all applications are constantly being upgraded and enhanced to stay current with the business developments and changes for the business enterprise.
In networked computer systems, a plurality of computers are connected together and one or more of the computers generally performs the function of a network server. A network may be established through the hard-wired interconnection of a plurality of computer terminals in a local network or on a wider scale such as the Internet or world wide web which may include telecommunication links. In any case, the network server acts as the central control unit for providing access to files, programs and program execution to the individual computers connected within the network. In general, a networked computer terminal will "logon" to the network and obtain access to a network server. The network server will download a homepage presentation on the user's terminal which may include and audio and video effects. From the initial screen display, a user may designate any other "address" to get to another "location" or screen display. The user may also select from a plurality of functions which may be presented for user selection on the initial display. Generally, almost all screen displays include designated selection areas on the screen where the user may point a selection device such as a mouse-controlled pointer, and "click" on the designated screen area to invoke a displayed function, or menu for other function selection options. When the homepage or selection screen is downloaded from the server, many small programs or "applets" are also downloaded at the same time to the user's terminal memory. Those applets are associated with different ones of the designated screen selection areas and are executed when a user makes a selection or clicks on one of the selection areas on the display. The applets, in turn, may call for the presentation of a new user interface screen, or a new or different section of a portion of the screen, such as a pop-up menu or other graphical user interface (GUI) which may be within a framed or windowed sub-section of the main homepage.
Java is the programming language of the Internet or world wide web. Generally, home pages including hypertext references and reference pages are written in HTML (hypertext markup language). Network browsers installed at user terminals or network servers are Java-enabled and have a Java virtual machine embedded in the browser to respond to Java programs. Applets are small programs which are designed to operate within Internet pages. Typically, the hypertext statement is underscored to indicate that its selection will effect the display of a referenced item. "Java Beans" are portable platform-independent components written in the Java programming language. "Java Beans" or "beans" are program components that may be used and re-used in applets or other Java programs. Java beans allow developers to create reusable software components that can be assembled together using visual application builder tools such as VISUAL AGE by IBM. Thus, "beans" can be manipulated visually in a builder tool and combined to create traditional applications in addition to web-oriented applets. Generally, web pages may include several bean component programs on any individual page. Beans are also generally associated with a visual function and can be downloaded from a server or other location to be implemented within a user's program on a user terminal.
Java beans are packaged and delivered in JAR (Java Archive) files, which is a new technology supported by JDK (Java Development Kit) 1.1. JAR files are used to collect Java class files, serialized objects, images, help files and similar resource files. In many Internet sessions when a user is accessing or connected to a site in the World Wide Web, the user may need to or desire to acquire a program or other downloadable content, typically in the form of a JAR file, from that site. The user is generally able to "download" a selected program from the remote site and the program will be transferred to the user terminal. However, not all user terminals operate on the same platform or use the same operating system. For example, a user terminal may be an IBM compatible terminal running a PC-based operating system while the accessed site may be a different hardware platform running a Unix operating system. Thus, even though a target program or JAR file may be downloaded to a user terminal, it must still be properly installed to operate on the specific platform at the user's terminal. Currently there is no standard way of accomplishing this installation process. Typically, the instructions for installation are presented in a "README" file which must be read and manually implemented by a user in order to install the JAR file on the user's particular system.
Thus, there is a need for a method by which files may be transferred or downloaded among various terminals or sites in a network and automatically installed at the receiving site.